package com.itheima.practice;

import java.util.Comparator;
import java.util.Scanner;
import java.util.TreeSet;

public class TreeSetPractice {
    public static void main(String[] args) {
//        Person person = new Person("张三",100,100,100);
//        person.setName("add");
//        double math = person.getMath();
//        System.out.println(math);
        /**
         * 1.创建一个TreeSet集合，存储Person对象，并且按照年龄进行排序，年龄相同按照姓名顺序排序。
         * 2.Scanner对象，监听键盘录入
         * 3.开启for循环，循环3次
         * 4.在每个循环中
         * ---1.提示用户依次录入姓名、语文、数学和英语的分数
         * ---2.创建Person对象，把键盘录入的数据赋值给Person对象的成员变量
         * ---3.把Person对象添加到TreeSet集合中
         * 5.遍历TreeSet集合，打印集合中的元素
         */
        TreeSet<Person> ts = new TreeSet<>(new Comparator<Person>() {
            @Override
            public int compare(Person o1, Person o2) {
                //o2的总成绩-o1的总成绩
                return (int) (o2.getChinese()+o2.getMath()+o2.getEnglish()-o1.getChinese()-o1.getMath()-o1.getEnglish());
            }
        });
        Scanner scanner = new Scanner(System.in);
        for (int i = 0; i < 3; i++) {
            System.out.println("请输入第"+(i+1)+"个学生信息：");
            System.out.println("请输入姓名：");
            //录入的时候不能有空格
            String name=scanner.next();
            System.out.println("请输入语文成绩：");
            double chinese=scanner.nextDouble();
            System.out.println("请输入数学成绩：");
            double math=scanner.nextDouble();
            System.out.println("请输入英语成绩：");
            double english=scanner.nextDouble();
            //创建Person对象
            Person p=new Person(name,chinese,math,english);
            //把Person对象添加到TreeSet集合中
            ts.add(p);
        }
        //5.遍历TreeSet集合，打印集合中的元素
        for (Person p:ts){
            System.out.println(p);
        }
    }
}
